自监督目标检测:不用在ImageNet上训练的目标检测(附论文下载)
计算机视觉研究院专栏
作者:Edison_G
现在的自监督学习通过在ImageNet数据集上实现图像分类来进行无监督的预训练,通过最大化不同图像之间的距离(相似度),最小化同一张图像的不同视图之间的相似度来学习一个最佳的特征表示,这种方法针对ImageNet这种分类数据集(一张图像上一个类别物体)来说是适用的。但是...
1
简要
无监督视觉表示学习引起了相当多的关注,旨在用大量的未标记数据生成更好的特征表示。最近的自监督学习方法取得了比监督学习方法可比较或更好的结果。他们通过执行实例级分类任务,在未标记的ImageNet数据集上训练CNN模型,从而最大限度地提高同一图像的不同转换视图之间的一致性,并可选择地最小化不同图像视图之间的一致性。自监督学习pipeline的潜在先验是,同一图像的不同views/crops对应于同一目标,如下图所示。
因此,最大化他们的agreement可以学习有用的特性。事实上,这个关键的先验实际上高度依赖于预训练数据集的潜在偏差:ImageNet是一个以目标为中心的数据集,可以确保潜在的先验。当考虑到收集和清理数据的额外努力时,未标记的ImageNet数据集实际上并不是免费的。另一方面,非标志性图像很容易收集,但可能包含多个对象,如COCO数据集。如下图所示。
不同的随机crop可能对应于不同的对象,其中自监督方法的有效性容易受到怀疑。此外,从实例级分类任务中学习到的独特表示可能不是适合于对象检测的特征。由于它应用全局池化层生成向量嵌入,可能会破坏图像空间结构并丢失局部信息,而检测器对空间定位敏感。
2
背景简单介绍
Generic Object Detection
大多数现代目标检测器,如Faster RCNN、Mask RCNN和Retinanet,都采用了“预训练和微调”范式,预训练网络进行ImageNet分类,然后传输检测微调的参数。最近,[Cheaper pre-training lunch: An efficient paradigm for object detection. arXiv preprint arXiv:2004.12178, 2020]以montage manner将预训练切换到目标检测域,以提高效率。这些工作证明了从大规模数据中学习的显著好处,但它们也遭受了在现实应用中使用标签数据的高成本。考虑到迁移学习范式的成功,后来的工作表明,在从零开始训练目标检测任务时,往往可以匹配微调精度。然而,[Kaiming He, Ross Girshick, and Piotr Dollar. Rethinking imagenet pre-training. arXiv preprint arXiv:1811.08883, 2018]也验证了,当这个范式进入一个小的数据体系时,它的性能会显著下降。由于标记检测数据的费用远高于分类,因此大规模标记数据的依赖性仍然限制了目前的目标检测器应用。
Self Supervised Learnin
首先介绍一下到底什么是 SSL,我们知道一般机器学习分为监督学习,非监督学习和强化学习。而 self-supervised learning 是无监督学习里面的一种,主要是希望能够学习到一种通用的特征表达用于下游任务。其主要的方式就是通过自己监督自己,比如把一段话里面的几个单词去掉,用他的上下文去预测缺失的单词,或者将图片的一些部分去掉,依赖其周围的信息去预测缺失的 patch。
根据我看的文章,现在 self-supervised learning 主要分为两大类:1. Generative Methods;2. Contrastive Methods。下面我们分别简要介绍一下这这两种方法。
Generative Methods
首先我们介绍一下 generative methods。这类方法主要关注 pixel space 的重建误差,大多以 pixel label 的 loss 为主。主要是以 AutoEncoder 为代表,以及后面的变形,比如 VAE 等等。对编码器的基本要求就是尽可能保留原始数据的重要信息,所以如果能通过 decoder 解码回原始图片,则说明 latent code 重建的足够好了。
这种直接在 pixel level 上计算 loss 是一种很直观的做法,除了这种直接的做法外,还有生成对抗网络的方法,通过判别网络来算 loss。
对于 generative methods,有一些问题,比如:
基于 pixel 进行重建计算开销非常大;
要求模型逐像素重建过于苛刻,而用 GAN 的方式构建一个判别器又会让任务复杂和难以优化。
对于一张人民币,我们能够很轻易地分辨其真假,说明我们对其已经提取了一个很好的特征表达,这个特征表达足够去刻画人民币的信息, 但是如果你要我画一张一模一样的人民币的图片,我肯定没法画出来。通过这个例子可以明显看出,要提取一个好的特征表达的充分条件是能够重建,但是并不是必要条件,所以有了下面这一类方法。
Contrasive self-supervised learning
除了上面这类方法外,还有一类方法是基于contrastive的方法。这类方法并不要求模型能够重建原始输入,而是希望模型能够在特征空间上对不同的输入进行分辨,就像上面美元的例子。
这类方法有如下的特点:1. 在feature space上构建距离度量;2. 通过特征不变性,可以得到多种预测结果;3. 使用Siamese Network;4. 不需要pixel-level重建。正因为这类方法不用在pixel-level上进行重建,所以优化变得更加容易。当然这类方法也不是没有缺点,因为数据中并没有标签,所以主要的问题就是怎么取构造正样本和负样本。
目前基于contrastive的方法已经取得了很好的紧张,在分类任上已经接近监督学习的效果,同时在一些检测、分割的下游任务上甚至超越了监督学习作为pre-train的方法。
下面是这两类方法的总结图片。
3
新框架分析
self-EMD提出去掉全局池化层,直接使用卷积特征图作为Image Embedding,这样就能保存局部与空间信息,但是这样该如何度量两个feature map之间的相似性呢?
而且同一个image的不同crop图像可能包含着不同的图像,因此,度量标准就需要在不同的局部patch中能够挑选出最优的匹配并且最小化不相关区域之间的噪声问题,本文提出使Earth Movier‘s Distance来作为度量标准计算所有局部patches的相似性,这种方法命名为Self-EMD。EMD适用于度量结构性表示之间相似性。给定所有元素对之间的相似性,EMD可以在拥有最小损失的结构之间获得最优的匹配。文章采用cosine相似度来度量两个feature map之间的不同位置之间的相似性并且为EMD约束设置一个合适的权重。
Self-EMD与BYOL不同在于去掉了最后的全局池化层,并采用卷积层替代了MLP head。采用最后的卷积特征图作为image embedding。Earth Mover’s Distance用来度量两组加权的目标或者加权的分布之间的距离。离散版本的EMD已经在最优传输问题(OTP)中已经被广泛的研究。
该操作可以对两种不同crop不同尺度的局部特征进行比较,增强学习的局部表示中的尺度信息。
4
实验
Main detection performance of several typical detectors in terms of AP (%) on COCO val with standard 1× schedule. ‘COCO+’ denotes the COCO train 2017 set plus the COCO unlabel set. For fair comparison, BYOL and Self-EMD are both pre-trained for 300 epochs on ImageNet and 800 epochs on COCO.
Detection performance with different backbones in terms of AP (%) on COCO val
Detection performance with several pre-training methods in terms of AP (%) on VOC 2007 test.
Visualization of the optimal matching weights. We visualize the heat map of the matching weights of the crop 2 to the corresponding position (the green boxes) in the crop 1.
© THE END
转载请联系本公众号获得授权
计算机视觉研究院学习群等你加入!
扫码关注
计算机视觉研究院
公众号ID|ComputerVisionGzq
学习群|扫码在主页获取加入方式
论文下载| 回复“EMD”获取下载
往期推荐
🔗